#ifndef						GAMESCREEN_HH_
# define					GAMESCREEN_HH_

# include					<map>
# include					<utility>
# include					"AScreen.hpp"
# include					"Square.hpp"
# include					"Goban.hpp"

class 						GameScreen : public AScreen
{
private:
	//						Attributes
	sf::RenderWindow 		&_window;
	std::map<int, Square*>	_squareMap;
	int						_turn;
	Goban					*_goban;
	bool 					_gameType;

public:
	//						Ctor-Dtor
	GameScreen(sf::RenderWindow &win);
	virtual ~GameScreen();
			
	//						Functions
	void					draw();
	void					buildSquareMap();
	void					checkCoordsValidity(int key);
	bool					mouseButtonEvent(sf::Event::MouseButtonEvent &event);
	void					mouseMoveEvent(sf::Event::MouseMoveEvent &event){};
	void					init(char type);
	void					init(std::string path){}

	//						Getters
	char		const		getGameType() const{return(0);}
	std::string				getWinner(int winner);
	int						isThereAWinner();
};

#endif